Processors contain a variety of different functional units, registers and cache structures for executing instructions and storing various types of data, such as a fixed-point unit, a floating-point unit, an integer unit, a data cache, an instruction cache, a fetch unit, and others. Generally, a greater quantity and/or larger size of certain cache structures is desired to accommodate certain performance goals or requirements. However, because of limited resource availability on a processor structure, increasing a size of one cache structure may result in decreasing a size of another cache structure or decreasing the performance of the data processing system.